package com.peanut;

import com.peanut.common.Result;
import com.peanut.domain.ov.TacCarBrandOV;
import com.peanut.domain.vo.TabUserVO;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.*;


@FeignClient(value = "peanutcar-car-service-conf", fallback = VehicleManagementFallback.class)
public interface VehicleManagementFeign {
    //查询全部
    @GetMapping("/dic/car/type/all")
    Result findDicCarType();
    //添加类型
    @PostMapping("/dic/car/type/addDicCarType")
    Result addDicCarType(@RequestBody TacCarBrandOV TacCarBrandOV);
    //模糊查询
    @PostMapping("/dic/car/type/findDicTypeCarByName/{carTypeName}")
    Result findDicTypeCarByName(@PathVariable("carTypeName")String carTypeName);
    //批量删除
    @PostMapping("/dic/car/type/deleteBathByIdsCarType/{ids}")
    Result deleteBathByIdsCarType(@PathVariable("ids") String ids);
    //查询品牌全部信息
    @GetMapping("/brand/all")
    Result FindBrand();
    //模糊查询
    @PostMapping("/brand/findBrandByName/{brandName}")
    Result findBrandByName(@PathVariable("brandName")String brandName);
    //增加车辆品牌
    @PostMapping("/brand/addBrand")
    Result addBrand(@RequestBody TacCarBrandOV tacCarBrandOV);
    //批量删除品牌
    @PostMapping("/brand/deleteBathByIdsBrand/{ids}")
    Result deleteBathByIdsBrand(@PathVariable("ids") String ids);

    //查询车系全部
    @GetMapping("/tabSeries/allTabSeries")
    Result FindAllTabSeries();
    //模糊查询 查询车系
    @PostMapping("/tabSeries/findTabSeriesByName/{seriesName}")
    Result findTabSeriesByName(@PathVariable("seriesName")String seriesName);
    //增加车系
    @PostMapping("/tabSeries/addTabSeries")
    Result addTabSeries(@RequestBody  TacCarBrandOV tacCarBrandOV);
    //批量删除
    @PostMapping("/tabSeries/deleteBathByIdsTabSeries/{ids}")
    Result deleteBathByIdsTabSeries(@PathVariable("ids") String ids);
    @PostMapping("tabUserController/getTabUserbyUserPhone")

    Result getTabUserbyUserPhone(@RequestParam("userPhone") String userPhone);

    @PutMapping("tabUserController/updateTabUserbyId")
    Result updateTabUserbyId(TabUserVO tabUserVO);

}
